/**
* @author sunke
* @Date 2023-09-22 22:03:55
* @description 爬虫监控
*/
package cn.jobstart.model;

import cn.jobstart.pubInter.BaseTimeDoMain;
import java.util.Date;
import javax.validation.constraints.*;
import org.hibernate.validator.constraints.Length;

public class SpiderMonitor extends BaseTimeDoMain {
    /**
     * 排序
     */
    private Integer sortNum = 0;

    /**
     * 是否显示
     * 1:是:Y,0:否:N
     */
    private Integer showFlag = 1;

    /**
     * 是否删除
     * 1:删除:Y,0:正常:N
     */
    private Integer delFlag = 0;

    /**
     * 版本
     */
    private Integer version;

    /**
     * 名称
     */
    @Length(max=50,message="名称长度最大值50")
    private String name;

    /**
     * 员工ID
     */
    @Length(max=32,message="员工ID长度最大值32")
    private String adminId;

    /**
     * 员工姓名
     */
    @Length(max=50,message="员工姓名长度最大值50")
    private String adminTruename;

    /**
     * 启动时间
     */
    private Date startTime;

    /**
     * 结束时间
     */
    private Date endTime;

    /**
     * 状态
     * 0:初始化:init,1:运行中:running,2:结束:stopped
     */
    private Integer status;

    /**
     * 订阅任务ID
     */
    @Length(max=32,message="订阅任务ID长度最大值32")
    private String talentSubscriptionTaskId;

    /**
     * 爬取数据类型
     * 0:职位:job,1:公司:company,2:简历:resume
     */
    private Integer dataType;

    /**
     * 成功页数
     */
    private Integer sussPage;

    /**
     * 失败页数
     */
    private Integer errorPage;

     /**
     *主键
     */
    public static final String ID = "spider_monitor.sm_id";

     /**
     *创建时间
     */
    public static final String CREATE_TIME = "spider_monitor.sm_create_time";

     /**
     *更新时间
     */
    public static final String UPDATE_TIME = "spider_monitor.sm_update_time";

     /**
     *排序
     */
    public static final String SORT_NUM = "spider_monitor.sm_sort_num";

     /**
     *是否显示
     */
    public static final String SHOW_FLAG = "spider_monitor.sm_show_flag";

     /**
     *是否删除
     */
    public static final String DEL_FLAG = "spider_monitor.sm_del_flag";

     /**
     *版本
     */
    public static final String VERSION = "spider_monitor.sm_version";

     /**
     *名称
     */
    public static final String NAME = "spider_monitor.sm_name";

     /**
     *员工ID
     */
    public static final String ADMIN_ID = "spider_monitor.sm_admin_id";

     /**
     *员工姓名
     */
    public static final String ADMIN_TRUENAME = "spider_monitor.sm_admin_truename";

     /**
     *启动时间
     */
    public static final String START_TIME = "spider_monitor.sm_start_time";

     /**
     *结束时间
     */
    public static final String END_TIME = "spider_monitor.sm_end_time";

     /**
     *状态
     */
    public static final String STATUS = "spider_monitor.sm_status";

     /**
     *订阅任务ID
     */
    public static final String TALENT_SUBSCRIPTION_TASK_ID = "spider_monitor.sm_talent_subscription_task_id";

     /**
     *爬取数据类型
     */
    public static final String DATA_TYPE = "spider_monitor.sm_data_type";

     /**
     *成功页数
     */
    public static final String SUSS_PAGE = "spider_monitor.sm_suss_page";

     /**
     *失败页数
     */
    public static final String ERROR_PAGE = "spider_monitor.sm_error_page";

     /**
     *填充detail key
     */
    public static final String SPIDER_MONITOR_FULL_DETAIL_KEY = "SPIDER_MONITOR_FULL_DETAIL";

     /**
     *填充list key
     */
    public static final String SPIDER_MONITOR_FULL_LIST_KEY = "SPIDER_MONITOR_FULL_LIST";

    /**
     * 获取排序
     *
     * @return sm_sort_num - 排序
     */
    public Integer getSortNum() {
        return sortNum;
    }

    /**
     * 设置排序
     *
     * @param sortNum 排序
     */
    public SpiderMonitor setSortNum(Integer sortNum) {
        this.sortNum = sortNum;
        return this;
    }

    /**
     * 获取是否显示
     *
     * @return sm_show_flag - 是否显示
     */
    public Integer getShowFlag() {
        return showFlag;
    }

    /**
     * 设置是否显示
     * 1:是:Y,0:否:N
     *
     * @param showFlag 是否显示
     */
    public SpiderMonitor setShowFlag(Integer showFlag) {
        this.showFlag = showFlag;
        return this;
    }

    /**
     * 获取是否删除
     *
     * @return sm_del_flag - 是否删除
     */
    public Integer getDelFlag() {
        return delFlag;
    }

    /**
     * 设置是否删除
     * 1:删除:Y,0:正常:N
     *
     * @param delFlag 是否删除
     */
    public SpiderMonitor setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
        return this;
    }

    /**
     * 获取版本
     *
     * @return sm_version - 版本
     */
    public Integer getVersion() {
        return version;
    }

    /**
     * 设置版本
     *
     * @param version 版本
     */
    public SpiderMonitor setVersion(Integer version) {
        this.version = version;
        return this;
    }

    /**
     * 获取名称
     *
     * @return sm_name - 名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置名称
     *
     * @param name 名称
     */
    public SpiderMonitor setName(String name) {
        this.name = name == null ? null : name.trim();
        return this;
    }

    /**
     * 获取员工ID
     *
     * @return sm_admin_id - 员工ID
     */
    public String getAdminId() {
        return adminId;
    }

    /**
     * 设置员工ID
     *
     * @param adminId 员工ID
     */
    public SpiderMonitor setAdminId(String adminId) {
        this.adminId = adminId == null ? null : adminId.trim();
        return this;
    }

    /**
     * 获取员工姓名
     *
     * @return sm_admin_truename - 员工姓名
     */
    public String getAdminTruename() {
        return adminTruename;
    }

    /**
     * 设置员工姓名
     *
     * @param adminTruename 员工姓名
     */
    public SpiderMonitor setAdminTruename(String adminTruename) {
        this.adminTruename = adminTruename == null ? null : adminTruename.trim();
        return this;
    }

    /**
     * 获取启动时间
     *
     * @return sm_start_time - 启动时间
     */
    public Date getStartTime() {
        return startTime;
    }

    /**
     * 设置启动时间
     *
     * @param startTime 启动时间
     */
    public SpiderMonitor setStartTime(Date startTime) {
        this.startTime = startTime;
        return this;
    }

    /**
     * 获取结束时间
     *
     * @return sm_end_time - 结束时间
     */
    public Date getEndTime() {
        return endTime;
    }

    /**
     * 设置结束时间
     *
     * @param endTime 结束时间
     */
    public SpiderMonitor setEndTime(Date endTime) {
        this.endTime = endTime;
        return this;
    }

    /**
     * 获取状态
     *
     * @return sm_status - 状态
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置状态
     * 0:初始化:init,1:运行中:running,2:结束:stopped
     *
     * @param status 状态
     */
    public SpiderMonitor setStatus(Integer status) {
        this.status = status;
        return this;
    }

    /**
     * 获取订阅任务ID
     *
     * @return sm_talent_subscription_task_id - 订阅任务ID
     */
    public String getTalentSubscriptionTaskId() {
        return talentSubscriptionTaskId;
    }

    /**
     * 设置订阅任务ID
     *
     * @param talentSubscriptionTaskId 订阅任务ID
     */
    public SpiderMonitor setTalentSubscriptionTaskId(String talentSubscriptionTaskId) {
        this.talentSubscriptionTaskId = talentSubscriptionTaskId == null ? null : talentSubscriptionTaskId.trim();
        return this;
    }

    /**
     * 获取爬取数据类型
     *
     * @return sm_data_type - 爬取数据类型
     */
    public Integer getDataType() {
        return dataType;
    }

    /**
     * 设置爬取数据类型
     * 0:职位:job,1:公司:company,2:简历:resume
     *
     * @param dataType 爬取数据类型
     */
    public SpiderMonitor setDataType(Integer dataType) {
        this.dataType = dataType;
        return this;
    }

    /**
     * 获取成功页数
     *
     * @return sm_suss_page - 成功页数
     */
    public Integer getSussPage() {
        return sussPage;
    }

    /**
     * 设置成功页数
     *
     * @param sussPage 成功页数
     */
    public SpiderMonitor setSussPage(Integer sussPage) {
        this.sussPage = sussPage;
        return this;
    }

    /**
     * 获取失败页数
     *
     * @return sm_error_page - 失败页数
     */
    public Integer getErrorPage() {
        return errorPage;
    }

    /**
     * 设置失败页数
     *
     * @param errorPage 失败页数
     */
    public SpiderMonitor setErrorPage(Integer errorPage) {
        this.errorPage = errorPage;
        return this;
    }
}